<?php

class Requerimiento extends BaseRequerimiento
{
  public function __toString()
  {
    return $this->getProyectoId();
  }
  
    public function getTablaP($id)
	{
		$con = Propel::getConnection();
		$stmt = $con->prepare("SELECT R.id,R.especificacion FROM requerimiento R WHERE NOT EXISTS
		(SELECT * FROM ite_req where ite_req.requerimiento_id=R.id ) AND R.proyecto_id= ?");
		$stmt->bindValue(1, $id);
		$stmt->execute();
		$tabla="";
		while($fila = $stmt->fetch()) 
		{
		 $tabla.= "<option value=\"".$fila['id']."\">".$fila['especificacion']."</option>";
		} 	
		$stmt = $con->prepare("SELECT R.id,R.especificacion FROM requerimiento R,(select R.id as id 
		from requerimiento R, actividad A where A.pendiente=true and A.terminada=false and 
		A.requerimiento_id=R.id group by R.id)A WHERE A.id=R.id AND R.proyecto_id= ?");
		$stmt->bindValue(1, $id);
		$stmt->execute();
		while($fila = $stmt->fetch()) 
		{
		 $tabla.= "<option value=\"".$fila['id']."\">".$fila['especificacion']."</option>";
		} 
		return $tabla;
	}
  
  	public function getTabla1($id)
	{
		$con = Propel::getConnection();
		$stmt = $con->prepare("SELECT R.id as id, R.especificacion as especificacion, R.nro_puntos as
		puntos FROM requerimiento R WHERE  R.proyecto_id= ? ");
		$stmt->bindValue(1, $id);
		$stmt->execute();
		$tabla="";
		while($fila = $stmt->fetch()) 
		{
		 $tabla.= "<option value=\"".$fila['id']."\">".$fila['especificacion']."</option>";
		} 	
		return $tabla;
	}
  
	public function getTabla($id)
	{
		$con = Propel::getConnection();
		$stmt = $con->prepare("SELECT R.id as id, R.especificacion as especificacion, R.nro_puntos as
		puntos FROM requerimiento R WHERE  R.proyecto_id= ? ");
		$stmt->bindValue(1, $id);
		$stmt->execute();
		$tabla="";				
		while($fila = $stmt->fetch()) 
		{
			$stmt1 = $con->prepare("SELECT A.id as id, A.descripcion as descripcion, R.primer_nombre 
			as nombre, R.primer_apellido as apellido FROM actividad A, recurso R WHERE 
			R.id=A.recurso_id and A.requerimiento_id=? and A.proyecto_id= ? ");
			$stmt1->bindValue(1, $fila['id']);
			$stmt1->bindValue(2, $id);
			$stmt1->execute();
			$actividades="<td><table id=\"hola\">"; 
				while($fila1 = $stmt1->fetch()) 
				{
				$actividades.="<tr><td>".$fila1['descripcion']. "</td><td>".$fila1['nombre']." 
				".$fila1['apellido'] ."</td></tr>";
				}
			$actividades.="</table></td>";
			$tabla.= "<tr><td><input type=\"radio\" name=\"RadioGroup2\" value=".$fila['id'].">";    
 			$tabla.= $fila['especificacion']."</td><td align=\"center\">". $fila['puntos']."</td>";
			$tabla.= $actividades."</tr>"; 
		} 	
		return $tabla;
	}
	
	public function getTablaSR($id)
	{
		$con = Propel::getConnection();
		$stmt = $con->prepare("SELECT R.id as id, R.especificacion as especificacion, R.nro_puntos as
		puntos FROM requerimiento R WHERE  R.proyecto_id= ? ");
		$stmt->bindValue(1, $id);
		$stmt->execute();
		$tabla="";	
		while($fila = $stmt->fetch()) 
		{
			$stmt1 = $con->prepare("SELECT A.id as id, A.descripcion as descripcion, R.primer_nombre 
			as nombre, R.primer_apellido as apellido FROM actividad A, recurso R WHERE 
			R.id=A.recurso_id and A.requerimiento_id=? and A.proyecto_id= ? ");
			$stmt1->bindValue(1, $fila['id']);
			$stmt1->bindValue(2, $id);
			$stmt1->execute();
			$actividades="<td><table border=\"0\">"; 
				while($fila1 = $stmt1->fetch()) 
				{
				$actividades.="<tr><td>".$fila1['descripcion']. "</td><td>".$fila1['nombre']." ".
				$fila1['apellido'] ."</td></tr>";
				}
			$actividades.="</table></td>";
			$tabla.= "<tr><td>".$fila['especificacion']."</td><td>". $fila['puntos']."</td>";
			$tabla.= $actividades."</tr>"; 
		} 	
		return $tabla;
	}
	

    public function eliminarRegistro()
	{
	    $con = Propel::getConnection();
	    $stmt = $con->prepare("DELETE FROM actividad WHERE proyecto_id= ? and requerimiento_id= ? ");
	    $stmt->bindValue(1, $this->getProyectoId());
		$stmt->bindValue(2, $this->getId());
	    $stmt->execute();	
		$stmt = $con->prepare("DELETE FROM ite_req WHERE proyecto_id= ? and requerimiento_id= ?  ");
	    $stmt->bindValue(1, $this->getProyectoId());
		$stmt->bindValue(2, $this->getId());
	    $stmt->execute();	
	    $stmt = $con->prepare("DELETE FROM requerimiento WHERE proyecto_id= ? and id= ? ");
	    $stmt->bindValue(1, $this->getProyectoId());
		$stmt->bindValue(2, $this->getId());
	    $stmt->execute();	
	}
	
	  	public function Existe_Nombre($proyecto_id,$nombre)
	{
	    $con = Propel::getConnection();
	    $stmt = $con->prepare("select * FROM requerimiento WHERE proyecto_id=? and especificacion=?");
	    $stmt->bindValue(1, $proyecto_id);
		$stmt->bindValue(2, $nombre);
	    $stmt->execute();
		$i=false;
		while($fila = $stmt->fetch()) 
		{
		$i=true;
		}
		return $i;		
	}
	
	  public function validar_puntos($numero)
  {
  		if ($numero =="") return false;
		if (ereg('^[1-9][0-9]*$', $numero))
		{
		return true;
		}
		else
		{ 
		 return false;		
		}
  }
  
  	public function ExisteRequerimiento( $proyecto_id,$nombre,$id)
	{
	   $con = Propel::getConnection();
	   $stmt = $con->prepare("select id FROM requerimiento WHERE proyecto_id=? and especificacion=?");
	   $stmt->bindValue(1, $proyecto_id);
	   $stmt->bindValue(2, $nombre);
	    $stmt->execute();
		$i=0;
		while($fila = $stmt->fetch()) 
		{
			$i=$i+1;
			if ($id==$fila['id']) $i=$i-1;
		}
		return $i;		
	}
	
	public function UpdateRegistro($id, $proyecto_id, $nombre, $puntos)
	{
	    $con = Propel::getConnection();
	    $stmt = $con->prepare("UPDATE requerimiento SET especificacion=?, nro_puntos=? WHERE 
		proyecto_id= ? and id= ?");
		$stmt->bindValue(1, $nombre);
		$stmt->bindValue(2, $puntos);
		$stmt->bindValue(3, $proyecto_id);
	    $stmt->bindValue(4, $id);
	    $stmt->execute();		
	}
  
}
